Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Merged by Bors] - Make Array.prototype an array object #2033

Closed
wants to merge 1 commit into from

Conversation

HalidOdat
Copy link
Member

It changes the following:

  • Make Array.prototype an array object

@HalidOdat HalidOdat added bug Something isn't working builtins PRs and Issues related to builtins/intrinsics labels Apr 17, 2022
@HalidOdat HalidOdat added this to the v0.15.0 milestone Apr 17, 2022
@HalidOdat HalidOdat changed the title Array.prototype is an array object Make Array.prototype an array object Apr 17, 2022
@github-actions
Copy link

Test262 conformance changes

VM implementation

Test result main count PR count difference
Total 88,720 88,720 0
Passed 53,170 53,174 +4
Ignored 21,853 21,853 0
Failed 13,697 13,693 -4
Panics 0 0 0
Conformance 59.93% 59.93% +0.00%
Fixed tests (4):
test/built-ins/Array/prototype/exotic-array.js [strict mode] (previously Failed)
test/built-ins/Array/prototype/exotic-array.js (previously Failed)
test/built-ins/Array/isArray/15.4.3.2-0-5.js [strict mode] (previously Failed)
test/built-ins/Array/isArray/15.4.3.2-0-5.js (previously Failed)

@codecov
Copy link

codecov bot commented Apr 17, 2022

Codecov Report

Merging #2033 (5042602) into main (a357a18) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main    #2033   +/-   ##
=======================================
  Coverage   43.92%   43.93%           
=======================================
  Files         211      211           
  Lines       18693    18695    +2     
=======================================
+ Hits         8211     8213    +2     
  Misses      10482    10482           
Impacted Files Coverage Δ
boa_engine/src/context/intrinsics.rs 59.20% <100.00%> (+0.66%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a357a18...5042602. Read the comment docs.

@github-actions
Copy link

Benchmark for 54e2798

Click to view benchmark
Test Base PR %
Arithmetic operations (Compiler) 626.8±5.40ns 635.0±6.66ns +1.31%
Arithmetic operations (Execution) 775.6±7.67ns 773.5±7.39ns -0.27%
Arithmetic operations (Parser) 6.4±0.06µs 6.4±0.07µs 0.00%
Array access (Compiler) 1527.9±14.55ns 1577.5±20.50ns +3.25%
Array access (Execution) 9.0±0.10µs 9.6±0.12µs +6.67%
Array access (Parser) 13.8±0.15µs 14.0±0.25µs +1.45%
Array creation (Compiler) 2.1±0.03µs 2.3±0.02µs +9.52%
Array creation (Execution) 3.0±0.02ms 3.1±0.03ms +3.33%
Array creation (Parser) 15.8±0.16µs 16.0±0.18µs +1.27%
Array pop (Compiler) 4.4±0.05µs 4.5±0.05µs +2.27%
Array pop (Execution) 1317.2±11.93µs 1358.6±10.21µs +3.14%
Array pop (Parser) 164.1±1.53µs 164.5±2.38µs +0.24%
Boolean Object Access (Compiler) 1094.2±12.10ns 1116.0±14.20ns +1.99%
Boolean Object Access (Execution) 4.9±0.05µs 5.1±0.07µs +4.08%
Boolean Object Access (Parser) 16.8±0.18µs 16.8±0.19µs 0.00%
Clean js (Compiler) 3.9±0.04µs 4.0±0.02µs +2.56%
Clean js (Execution) 817.6±11.34µs 861.7±8.85µs +5.39%
Clean js (Parser) 34.0±0.35µs 34.2±0.37µs +0.59%
Create Realm 328.8±4.78ns 345.2±3.27ns +4.99%
Dynamic Object Property Access (Compiler) 1892.5±18.44ns 1996.4±21.32ns +5.49%
Dynamic Object Property Access (Execution) 6.4±0.08µs 6.8±0.05µs +6.25%
Dynamic Object Property Access (Parser) 12.1±0.12µs 12.1±0.15µs 0.00%
Fibonacci (Compiler) 2.6±0.03µs 2.8±0.03µs +7.69%
Fibonacci (Execution) 1557.9±14.89µs 1632.4±4.82µs +4.78%
Fibonacci (Parser) 18.9±0.17µs 19.1±0.20µs +1.06%
For loop (Compiler) 2.3±0.03µs 2.5±0.02µs +8.70%
For loop (Execution) 17.8±0.17µs 18.6±0.03µs +4.49%
For loop (Parser) 16.1±0.19µs 16.4±0.20µs +1.86%
Mini js (Compiler) 3.8±0.04µs 4.0±0.01µs +5.26%
Mini js (Execution) 776.3±6.61µs 802.9±8.69µs +3.43%
Mini js (Parser) 30.1±0.32µs 30.0±0.43µs -0.33%
Number Object Access (Compiler) 1092.0±13.89ns 1124.1±15.58ns +2.94%
Number Object Access (Execution) 3.7±0.04µs 4.0±0.05µs +8.11%
Number Object Access (Parser) 13.0±0.15µs 12.9±0.14µs -0.77%
Object Creation (Compiler) 1610.6±16.81ns 1711.5±21.26ns +6.26%
Object Creation (Execution) 6.0±0.06µs 6.4±0.03µs +6.67%
Object Creation (Parser) 10.6±0.10µs 10.7±0.11µs +0.94%
RegExp (Compiler) 1930.0±21.29ns 2.1±0.03µs +8.81%
RegExp (Execution) 13.0±0.17µs 13.7±0.16µs +5.38%
RegExp (Parser) 11.7±0.13µs 11.8±0.12µs +0.85%
RegExp Creation (Compiler) 1656.1±16.56ns 1765.9±18.63ns +6.63%
RegExp Creation (Execution) 9.8±0.11µs 10.6±0.11µs +8.16%
RegExp Creation (Parser) 9.7±0.13µs 9.8±0.10µs +1.03%
RegExp Literal (Compiler) 1909.4±19.94ns 2.0±0.02µs +4.74%
RegExp Literal (Execution) 13.0±0.17µs 13.8±0.12µs +6.15%
RegExp Literal (Parser) 9.4±0.10µs 9.5±0.11µs +1.06%
RegExp Literal Creation (Compiler) 1622.3±18.10ns 1786.3±14.83ns +10.11%
RegExp Literal Creation (Execution) 9.8±0.11µs 10.7±0.03µs +9.18%
RegExp Literal Creation (Parser) 7.5±0.06µs 7.5±0.09µs 0.00%
Static Object Property Access (Compiler) 1633.0±14.76ns 1730.1±24.12ns +5.95%
Static Object Property Access (Execution) 6.2±0.06µs 6.7±0.01µs +8.06%
Static Object Property Access (Parser) 11.3±0.12µs 11.4±0.14µs +0.88%
String Object Access (Compiler) 1552.4±13.03ns 1616.0±19.83ns +4.10%
String Object Access (Execution) 7.0±0.09µs 7.5±0.08µs +7.14%
String Object Access (Parser) 16.4±0.18µs 16.7±0.17µs +1.83%
String comparison (Compiler) 2.5±0.04µs 2.6±0.10µs +4.00%
String comparison (Execution) 5.3±0.06µs 5.6±0.05µs +5.66%
String comparison (Parser) 12.9±0.15µs 13.1±0.16µs +1.55%
String concatenation (Compiler) 1944.5±23.23ns 2.1±0.02µs +8.00%
String concatenation (Execution) 5.0±0.06µs 5.3±0.06µs +6.00%
String concatenation (Parser) 8.8±0.08µs 8.9±0.10µs +1.14%
String copy (Compiler) 1542.2±24.34ns 1647.3±17.23ns +6.81%
String copy (Execution) 4.8±0.05µs 5.0±0.06µs +4.17%
String copy (Parser) 6.4±0.08µs 6.5±0.09µs +1.56%
Symbols (Compiler) 1086.6±11.15ns 1110.1±11.58ns +2.16%
Symbols (Execution) 4.9±0.06µs 5.2±0.02µs +6.12%
Symbols (Parser) 4.9±0.06µs 4.9±0.06µs 0.00%

Copy link
Member

@Razican Razican left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, thanks!

@raskad
Copy link
Member

raskad commented Apr 17, 2022

bors r+

bors bot pushed a commit that referenced this pull request Apr 17, 2022
It changes the following:
- Make `Array.prototype` an array object
@bors
Copy link

bors bot commented Apr 17, 2022

Pull request successfully merged into main.

Build succeeded:

@bors bors bot changed the title Make Array.prototype an array object [Merged by Bors] - Make Array.prototype an array object Apr 17, 2022
@bors bors bot closed this Apr 17, 2022
@bors bors bot deleted the fix/Array.prototype branch April 17, 2022 20:05
Razican added a commit that referenced this pull request Jun 8, 2022
It changes the following:
- Make `Array.prototype` an array object
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working builtins PRs and Issues related to builtins/intrinsics
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants